This invention generally relates to the field of digital rights management, and more particularly, to methods of remotely enforcing digital content policy.
The Internet worldwide network, as well as other data communication networks, enables many digital appliances to interconnect and exchange information. Digital appliances include personal computers, laptop computers, tablet computers, PDAs, mobile phones, MP3 players, DVD players, gaming consoles, digital recording devices such as digital cameras, and others. A particular use of the Internet, and other networks such as cable and satellite or a corporate or organization network is to distribute digital files, specifically digital content files.
A Digital Content File is data which has an end use of being either viewed, listened to, read, played, executed, or otherwise utilized by an end user, and at some point prior to end use is stored and/or represented in numerical form. A Digital Content File may be an audio file, a video file, a software file, an electronic book, a document, a computer game or other types of content.
A Copyrighted Digital Content File is a Digital Content File which has legal limitations on at least one end use. For example, a user may not create a copy of, distribute, modify, sell, and/or perform other end uses of a Copyrighted Digital Content File, without receiving permission from the copyright owner. Examples of Copyrighted Digital Content Files are commercial movies, commercial music, electronic books, software, computer games, and the like.
The raw digital representation of high quality multimedia files such as audio and video uses high rate of data sampling to turn analog information into digital data. This representation consumes large quantities of storage. For example a WAV format file which represents a typical audio clip of 3 minutes length, can easily be larger than 30 Megabytes in size. A typical 60 second video clip can take up 1.5 GB when not compressed. Transferring data over a network such as the Internet has a cost that may be quantified both in monetary terms and in respect to time needed to transfer information. The larger the files to transfer, the more time the transfer will take, and for connections that are paid for according to connection time, the more it will cost.
In order to reduce the time and cost of storing and/or transferring digital multimedia files over a network, experts in the field devised sophisticated algorithms that compress the digital content files to smaller files. Although the compression techniques are usually lossy (the data cannot be exactly restored when decompressing), standard compression and decompression techniques for audio and video produce a result that is usually negligibly different for human ears and/or eyes. Good compression techniques can reduce an audio file to ten percent of its original size, and a video file can be compressed much more. Taking the above example of a 3 minute song coded in WAV at 30 MB, a compressed version can take up only 3 MB of memory.
The most famous family of compression techniques is collectively known as Moving Picture Expert Group (MPEG). One of the subfamilies of MPEG audio compression techniques is called MP3, short for Moving Picture Expert Group Audio Layer 3.
In order to play an MP3 audio file on a computer or MP3 player, a rendering software and/or hardware application that decompresses the file and sends a bit stream to the audio equipment that drives the speakers is utilized. An example of such software is Winamp by Nullsoft. There exist applications that can render both audio and video for example Microsoft Media Player.
The advent of the Internet and MP3 compression in the late 1990's brought about a revolution in music distribution worldwide. Peer to Peer systems were created in which one person would copy music from a CD to a computer, compress it to MP3 format and then share it with tens, hundreds and even thousands of other people, by sending the files over the Internet. The most famous example of a software system that provided application infrastructure for the sharing of digital music files is Napster, by a company of the same name. Napster was ordered to shut down by a US court, because the system was used mostly for sharing copyrighted music files, without providing compensation to the artists and the recording companies that produced these works. Although Napster in its original form no longer exists, many similar services abound today, in which users from all over the world may share digital content of any sort, including music, movies, software applications, games, and other files.
Content owners have been trying to fight this phenomenon since it began, claiming a sharp decrease in their revenues due to digital content “piracy”. So far, content owners such as recording companies and movie studios have met with very limited success in their attempts at using technological solutions to solve these problems.
Although free content downloading applications abound, pay services for digital content such as music have also appeared recently by vendors such as RealNetworks, Apple, and Microsoft MSN Music Club in Europe. Users pay a fee per song, which is then downloaded to their computer, and which they can then play or copy to CDs or other devices. Alternatively, users subscribe for unlimited access to songs for a given period of time. These services do specify to users what they may do with the files once they are downloaded, but are not successful in enforcing the specified usage policies.
In order to combat downloading and sharing of copyrighted digital content by parties that are not licensed to do so, and to enforce use of digital content according to license, various protection methods are employed by content owners. The collective term for the control of distribution and usage of digital content is Digital Rights Management (hereafter DRM). DRM systems typically involve cryptographic methods for the secure distribution of the content between a content repository/server and a digital appliance. Such methods typically require the appliance to include an implementation of cryptographic algorithms and hold cryptographic keys in order to gain access to the content.
In many cases the software application used to render the digital content implements some form of DRM that is engaged when the user attempts to access the digital content, for example Microsoft MediaPlayer which is used to view video files and listen to audio files, has built in DRM functionality. One of the operations performed by such an application is the process of decrypting the content file using cryptographic methods and cryptographic keys. In order to execute such operations, the application must have access to the cryptographic methods and keys; therefore the cryptographic methods and keys must reside within the reach of the application. Typically the cryptographic methods, the keys, or both, reside within the application, in the digital content file itself, or somewhere within the digital appliance storage.
A digital appliance such as a computer or PDA is typically an open platform enabling computer programmers to develop programs for it. In some cases, software programs are developed for the purpose of hacking and locating the cryptographic keys and algorithms of a DRM system, in order to circumvent the DRM and gain access to the content. This process is generally called an “attack” and if it succeeds it is commonly referred to as a “crack” or a “hack” to the DRM system. A computer program that performs this function is referred to hereafter as a hacking program or a cracking program.
Examples of successful attacks are well known in the art. In 2001 Microsoft's Media Player was cracked by a programmer using the pseudonym “Beale Screamer”.
Other forms of attacks include using programming tools. For example, software debuggers track and trap the digital content information after the rendering application has decrypted it, retrieving the “protected” information. Such information includes the digital content file and metadata describing how it is to be rendered. A hacking program that cracks the application and releases this information from the DRM system enables the construction of unauthorized copies of the original digital content file.
As a countermeasure, DRM systems can use more sophisticated cryptographic schemes and code obfuscation techniques. Other methods include adding tamper resistant hardware to store the cryptographic keys. Examples of such methods are cryptographic tokens such as iToken by Rainbow Technologies Inc. or using a smart card to store cryptographic keys and optionally cryptographic algorithms. Such solutions either reveal the cryptographic key to the digital appliance in the process of decrypting the information, or internally perform the cryptographic functions but reveal the end result in a raw form that can then be accessed.
A side effect that arises from the above content protection methods is that the software application that renders the digital content takes an active part in the protection process by implementing the above mentioned cryptographic methods and code obfuscation. Since the content protection implementation must be kept secret, it can be known solely by the organization that developed the software application. Furthermore, the content itself must be amended with cryptographic keys and data that are known only to that specific implementation, making the specific software application be the only software piece that can decrypt and render the content. By tying content to be used by a specific software application, the type and variety of digital appliances that may be utilized to use the content is limited to the type and variety of the consumer electronic appliances that the organization that developed the application decides to support.
The above methods have proven to slow, but not halt, an adversary. Given enough time and effort, a computer program that cracks a DRM system may be written. It can be appreciated by those skilled in the art that such successful attacks are easier to carry out on software applications that execute in an open development environment that enables programmers to develop software programs. Similarly, cryptographic co-processors leave the content vulnerable after decryption.
Another method that is partially effective in preventing digital content files from being copied and disseminated without control is the streaming of digital content files such as audio and video files to users. In this scenario, files are not downloaded to be stored on a digital appliance but rather “broadcast” much like a radio program. This ensures that only a small block of the content is present on the digital appliance at each given moment. The downside of this is that a user must be connected to the streaming source or online during the entire duration of the music program or movie. Another problem with streaming is that, in contrast to a file that is saved on the digital appliance storage, a user that has paid for content that is streamed cannot access the content at all times. Another shortcoming of streaming is that programs exist today for recording the streamed content and reconstructing a digital copy of the original digital content, without creating a noticeable difference to the human eye or ear.
To summarize the problems with existing solutions for distribution and control of copyrighted digital content, existing art stores encrypted copyrighted digital content and rendering software applications in open computing systems that are easy to crack. By tying digital content to a specific format and a specific rendering software application, the number of different types of digital appliances that can be utilized for an end-use of the digital content is limited. Furthermore, streaming solutions are inconvenient for users and easily circumvented.
There is clearly an unmet need for a system, apparatus, and method for enabling users to possess and use copyrighted digital content but within limitations specified by the owners of the copyright.